//用多线程自点击立即开始按钮启动截图权限
threads.start(function() {
    text("立即开始").findOne().click();
});
images.requestScreenCapture(); //向系统省去截图权限
auto.waitFor(); //判断是否启动无障碍服务
//识图找色，识别能量球的函数
function HuntEnergy(a, WidthPropertion, HeightPropertion) {
    //循环一直查找能量球
    while (true) {
        images.captureScreen("./res/z蚂蚁森林/好友.jpg"); //截图并保存
        var img2 = images.read("./res/z蚂蚁森林/好友.jpg");
        var point = images.findColor(img2, a, {
            region: [40 * WidthPropertion, 560 * HeightPropertion, 900 * WidthPropertion, 230 * HeightPropertion],
            threshold: 8
        }); //区域找色，相似度默认为三原色通道上下8
        //目标颜色点存在即点击，不存在这退出循环
        if (point) {
            click(point.x, point.y);
        } else {
            img2.recycle();
            break;
        }
    };
};
//遍历能量球，复查防止漏点以及点击帮助球，由于快要消失的能量球会闪烁，无法基于识图查找
//由于版本更新该函数已经废弃了，现在全用区域找色
function HelpFriends(p) {
    if (p == 0) {
        //找其余能量球，主要为了帮好友收取能量    
        collection = className("android.widget.Button").find();
        for (i = 0; i < 3; i++) {
            collection.each(function(obj) {
                if (obj.text().length == 1) {
                    press(obj.bounds().centerX(), obj.bounds().centerY(), 40);
                }
            });
        };
    } else {
        //找其余能量球，主要为了帮好友收取能量    
        collection = className("android.widget.Button").find();
        collection.each(function(obj) {
            if (obj.text().length == 1) {
                for (i = 0; i < 3; i++) {
                    press(obj.bounds().centerX(), obj.bounds().centerY(), 40);
                }
            }
        });
    };
};
//浇水功能
function cowatering() {
    images.captureScreen("./res/z蚂蚁森林/大图.jpg");
    var img = images.read("./res/z蚂蚁森林/大图.jpg");
    var temp1 = images.read("./res/z蚂蚁森林/合种.jpg");
    var p = findImage(img, temp1);
    while (true) {
        if (p) {
            click(p.x + temp1.getWidth() / 2, p.y + temp1.getHeight() / 2);
            break
        }
    }
    text("说点啥吧").findOne(5000)
    sleep(2000)
    images.captureScreen("./res/z蚂蚁森林/大图.jpg");
    var img = images.read("./res/z蚂蚁森林/大图.jpg");
    var temp1 = images.read("./res/z蚂蚁森林/水壶.jpg");
    var p = findImage(img, temp1);
    while (true) {
        if (p) {
            click(p.x + temp1.getWidth() / 2, p.y + temp1.getHeight() / 2);
            break
        }
    }
    sleep(1000)
    images.captureScreen("./res/z蚂蚁森林/大图.jpg");
    var img = images.read("./res/z蚂蚁森林/大图.jpg");
    if (text("浇水").exists()) {
        var temp1 = images.read("./res/z蚂蚁森林/浇水.jpg");
        var p = findImage(img, temp1);
        while (true) {
            if (p) {
                click(p.x + temp1.getWidth() / 2, p.y + temp1.getHeight() / 2);
                img.recycle()
                temp1.recycle()
                break
            }
        }
    }
    if (text("知道了").exists()) {
        var temp1 = images.read("./res/z蚂蚁森林/知道了.jpg");
        var p = findImage(img, temp1);
        while (true) {
            if (p) {
                click(p.x + temp1.getWidth() / 2, p.y + temp1.getHeight() / 2);
                img.recycle()
                temp1.recycle()
                break
            }
        }
    }
    sleep(2000);
    back();
}
//找能量的图标
function FindEnergy() {
    images.captureScreen("./res/z蚂蚁森林/大图.jpg");
    var img = images.read("./res/z蚂蚁森林/大图.jpg");
    var temp1 = images.read("./res/z蚂蚁森林/找能量.jpg");
    p = findImage(img, temp1)
    if (p) {
        click(p.x + temp1.getWidth() / 2, p.y + temp1.getHeight() / 2);
        img.recycle();
        temp1.recycle();
    }
}
//主函数
var img = images.read("./res/z蚂蚁森林/能量球.jpg");
var a = images.pixel(img, 450, 600); //取准备好的截图上的能量球上数字颜色
img.recycle()
app.launchApp("支付宝");
text("蚂蚁森林").findOne(4000);
sleep(2000);
let db = sqlite.open("./data.db");
args = db.rawQuery("SELECT * FROM MYSL where id =?", ["1"]).single()
if (text("蚂蚁森林").exists()) {
    click("蚂蚁森林");
} else if (text("全部").exists()) {
    click("全部");
    text("蚂蚁森林").findOne(2000).parent().click();
}
//定义设备长宽比例
var WidthPropertion = device.width / 1080;
var HeightPropertion = device.height / 2340;
//判断界面是否加载完成
desc("更多").findOne(5000);
text("放话").findOne(2000);
text("种树").findOne(2000);
text("放话").findOne(2000);
if (args.watering) {
    cowatering()
}
toast("后视镜里的世界，越来越远的道别，你转身向背，侧脸还是很美。我用眼光去追，竟听见你的泪。\n在车窗外面徘徊，是我错失的机会，你站的方位，跟我中间隔着泪，街景一直在后退，你的崩溃在窗外零碎")
sleep(2000)
toast("后视镜里的世界，越来越远的道别，你转身向背，侧脸还是很美。我用眼光去追，竟听见你的泪。\n在车窗外面徘徊，是我错失的机会，你站的方位，跟我中间隔着泪，街景一直在后退，你的崩溃在窗外零碎")
HuntEnergy(a, WidthPropertion, HeightPropertion);
sleep(2000)
while (true) {
    FindEnergy();
    sleep(2000);
    HuntEnergy(a, WidthPropertion, HeightPropertion)
    images.captureScreen("./res/z蚂蚁森林/大图.jpg");
    var img = images.read("./res/z蚂蚁森林/大图.jpg");
    var temp1 = images.read("./res/z蚂蚁森林/返回我的森林.jpg");
    var p = findImage(img, temp1);
    if (p) {
        img.recycle()
        temp1.recycle()
        toast("well done");
        openAppSetting(getPackageName("支付宝"));
        text("强行停止").click();
        sleep(1000)
        text("强行停止").click();
        sleep(1000)
        back();
        break;
    }
}